﻿
#ifndef IMAGETODATATOOLS_H
#define IMAGETODATATOOLS_H
#pragma execution_character_set("utf-8")

#include <QWidget>
#include <QDesktopWidget>
#include <QTimer>
#include <QDateTime>
#include <QFileDialog>
#include <QDebug>
#include <QMessageBox>
#include <QListWidgetItem>
#include <QDragEnterEvent>
#include <QMimeData>
#include <QBuffer>
#include <QImage>

QT_BEGIN_NAMESPACE
namespace Ui { class ImageToDataTools; }
QT_END_NAMESPACE

class ImageToDataTools : public QWidget

{
    Q_OBJECT

public:
    ImageToDataTools(QWidget *parent = nullptr);
    ~ImageToDataTools();

private:
    Ui::ImageToDataTools *ui;

public:
    void initUI();
    void ShowTime();
    void DelayTime(int s);
    void PicToData(QString fromPic,QString toData,QString myformat);//图片转数据
    void DataToPic(QString fromData,QString toPic,QString myformat);//数据转图片

private slots:
    void on_btnBrowseToPic_clicked();
    void on_btnBrowseToTxt_clicked();
    void on_btnPicToData_clicked();
    void on_btnDataToPic_clicked();
    void on_btnSelectFile_clicked();
    void on_btnSelectTxt_clicked();
    void on_btnChangeToJpg_clicked();
    void on_btnChangeToTxt_clicked();
    void on_listWidget_doubleClicked(const QModelIndex &index);
protected:
    void dragEnterEvent(QDragEnterEvent *event) override;   // 处理拖动操作进入窗口事件
    void dropEvent(QDropEvent *event) override;             //处理拖放操作完成的事件。当拖动的数据在窗口上释放时，会触发该事件
};

#endif // IMAGETODATATOOLS_H
